package com.jyy.prefabricated.dto;

import com.jyy.prefabricated.entity.ExamPaperArea;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * @version 1.0.0
 * @author: zjj
 */

@Data
public class CoursePackageDto {

    private Integer id;


    @NotNull(message = "课程分类不能为空")
    private Integer categoryId;

    /**
     * 板块分类
     */
    // @NotNull(message = "板块分类不能为空")
    private Integer plateId;
    @NotNull(message = "课程包名称不能为空")
    private String courseName;


    // @NotNull(message = "原价不能为空")
    private BigDecimal listPrice;

    // @NotNull(message = "售价不能为空")
    private BigDecimal price;
    /**
     * 月原价
     */
    private BigDecimal monthListPrice;

    /**
     * 月售价
     */
    private BigDecimal monthPrice;
    /**
     * 周原价
     */
    private BigDecimal weekListPrice;

    /**
     * 周售价
     */
    private BigDecimal weekPrice;
    /**
     * 日原价
     */
    private BigDecimal dayListPrice;

    /**
     * 日售价
     */
    private BigDecimal dayPrice;
    // @NotNull(message = "学时不能为空")
    private Integer classHours;

    // @NotNull(message = "学习人数不能为空")
    private Integer studyCount;

    //@NotNull(message = "可分配数量不能为空")
    private Integer distributionNum;

    @NotNull(message = "课程包封面不能为空")
    private String pic;

    // @NotNull(message = "课程包简介不能为空")
    private String content;

    private Integer status;

    private Boolean recommend;

    /**
     * 小鹅通视频链接路径
     */
    private String xiaoeUrl;

    private Integer sort;

    /**
     * 及格分数
     */
    private  Double passGrade;
    /**
     * 文档课程
     */
    private List<Integer> documentCourseIds = new ArrayList<>();

    /**
     * 录播课程
     */
    private List<Integer> recordingCourseIds = new ArrayList<>();

    /**
     * 关联题库
     */
    private List<Integer> questionBankIds = new ArrayList<>();

    /**
     * 关联考试
     */
    private List<Integer> examPaperIds = new ArrayList<>();

    /**
     * 关联练习
     */
    private List<Integer> practiceIds = new ArrayList<>();

    /**
     * 关联课程包
     */
    private List<Integer> coursePackageIds = new ArrayList<>();

    /**
     * 试卷区域
     */
    private List<ExamPaperArea> areas = new ArrayList<>();

}
